tests: Make the pixbuf test use TAP
authorMatthias Clasen <mclasen@redhat.com>
Sun, 28 Mar 2021 00:44:18 +0000 (20:44 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 28 Mar 2021 01:03:43 +0000 (21:03 -0400)
Otherwise, meson just considers this test skipped.

testsuite/gdk/pixbuf.c

index 8e34254074e00df88b1b7f433f55c20466cc58d1..591444fd8614f789bdb312373cdb1880461c4282 100644 (file)
@@ -1,33 +1,42 @@
 #include <gdk-pixbuf/gdk-pixbuf.h>
 
-int
-main (int argc, char *argv[])
+static void
+test_format (gconstpointer d)
 {
+  const char *f = d;
   GSList *formats;
-  gboolean have_png, have_jpeg;
+  gboolean found;
 
-  have_png = FALSE;
-  have_jpeg = FALSE;
+  found = FALSE;
 
   formats = gdk_pixbuf_get_formats ();
 
-  for (GSList *l = formats; l; l = l->next)
+  for (GSList *l = formats; l && !found; l = l->next)
     {
       GdkPixbufFormat *format = l->data;
       char *name;
 
       name = gdk_pixbuf_format_get_name (format);
 
-      if (strcmp (name, "png") == 0)
-        have_png = TRUE;
-      else if (strcmp (name, "jpeg") == 0)
-        have_jpeg = TRUE;
+      if (strcmp (name, f) == 0)
+        found = TRUE;
 
       g_free (name);
     }
 
-  if (!have_png || !have_jpeg)
-    return 1;
+  g_slist_free (formats);
+
+  g_assert_true (found);
+}
+
+
+int
+main (int argc, char *argv[])
+{
+  g_test_init (&argc, &argv, NULL);
+
+  g_test_add_data_func ("/pixbuf/format/png", "png", test_format);
+  g_test_add_data_func ("/pixbuf/format/jpeg", "jpeg", test_format);
 
-  return 0;
+  return g_test_run ();
 }